import request from '@/utils/request'

/**
 * 获取公告列表
 * @param {object} params 查询参数
 * @returns {Promise}
 */
export function getAnnouncementList(params) {
  return request({
    url: '/api/announcements',
    method: 'get',
    params
  })
}

/**
 * 获取公告详情
 * @param {number} id 公告ID
 * @returns {Promise}
 */
export function getAnnouncementDetail(id) {
  return request({
    url: `/api/announcements/${id}`,
    method: 'get'
  })
}

/**
 * 获取指定社团的所有公告
 * @param {number} clubId 社团ID
 * @returns {Promise}
 */
export function getAnnouncementsByClubId(clubId) {
  return request({
    url: `/api/announcements/club/${clubId}`,
    method: 'get'
  })
}

/**
 * 获取学校公告
 * @returns {Promise}
 */
export function getSchoolAnnouncements() {
  return request({
    url: '/api/announcements/school',
    method: 'get'
  })
}

/**
 * 添加公告
 * @param {object} data 公告信息
 * @returns {Promise}
 */
export function addAnnouncement(data) {
  return request({
    url: '/api/announcements',
    method: 'post',
    data
  })
}

/**
 * 更新公告
 * @param {number} id 公告ID
 * @param {object} data 公告信息
 * @returns {Promise}
 */
export function updateAnnouncement(id, data) {
  return request({
    url: `/api/announcements/${id}`,
    method: 'put',
    data
  })
}

/**
 * 删除公告
 * @param {number} id 公告ID
 * @returns {Promise}
 */
export function deleteAnnouncement(id) {
  return request({
    url: `/api/announcements/${id}`,
    method: 'delete'
  })
} 